repo/init: add --verbose flags We don't use these for much yet, but init passes it down to the project sync layers which already has support for verbose mode. Change-Id: I651794f1b300be1688eeccf3941ba92c776812b5 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/256454 Tested-by: Mike Frysinger <vapier@google.com> Reviewed-by: Jonathan Nieder <jrn@google.com> 
diff --git a/repo b/repo index 32ad4cb..25ed328 100755 --- a/repo +++ b/repo 
@@ -265,9 +265,12 @@    # Logging.  group = parser.add_option_group('Logging options') + group.add_option('-v', '--verbose', + dest='output_mode', action='store_true', + help='show all output')  group.add_option('-q', '--quiet', - action='store_true', default=False, - help='be quiet') + dest='output_mode', action='store_false', + help='only show errors')    # Manifest.  group = parser.add_option_group('Manifest options') @@ -468,6 +471,8 @@  if args:  parser.print_usage()  sys.exit(1) + opt.quiet = opt.output_mode is False + opt.verbose = opt.output_mode is True    url = opt.repo_url  if not url: @@ -527,7 +532,7 @@  do_verify = True    dst = os.path.abspath(os.path.join(repodir, S_repo)) - _Clone(url, dst, opt.quiet, opt.clone_bundle) + _Clone(url, dst, opt.clone_bundle, opt.quiet, opt.verbose)    if do_verify:  rev = _Verify(dst, branch, opt.quiet) @@ -746,7 +751,7 @@  urllib.request.install_opener(urllib.request.build_opener(*handlers))     -def _Fetch(url, cwd, src, quiet): +def _Fetch(url, cwd, src, quiet, verbose):  if not quiet:  print('Get %s' % url, file=sys.stderr)   @@ -762,7 +767,7 @@  run_git(*cmd, stderr=err, cwd=cwd)     -def _DownloadBundle(url, cwd, quiet): +def _DownloadBundle(url, cwd, quiet, verbose):  if not url.endswith('/'):  url += '/'  url += 'clone.bundle' @@ -812,12 +817,12 @@  def _ImportBundle(cwd):  path = os.path.join(cwd, '.git', 'clone.bundle')  try: - _Fetch(cwd, cwd, path, True) + _Fetch(cwd, cwd, path, True, False)  finally:  os.remove(path)     -def _Clone(url, cwd, quiet, clone_bundle): +def _Clone(url, cwd, clone_bundle, quiet, verbose):  """Clones a git repository to a new subdirectory of repodir  """  try: @@ -834,9 +839,9 @@  _SetConfig(cwd,  'remote.origin.fetch',  '+refs/heads/*:refs/remotes/origin/*') - if clone_bundle and _DownloadBundle(url, cwd, quiet): + if clone_bundle and _DownloadBundle(url, cwd, quiet, verbose):  _ImportBundle(cwd) - _Fetch(url, cwd, 'origin', quiet) + _Fetch(url, cwd, 'origin', quiet, verbose)      def _Verify(cwd, branch, quiet): 
diff --git a/subcmds/init.py b/subcmds/init.py index af5bc29..be73cec 100644 --- a/subcmds/init.py +++ b/subcmds/init.py 
@@ -87,9 +87,12 @@  def _Options(self, p, gitc_init=False):  # Logging  g = p.add_option_group('Logging options') + g.add_option('-v', '--verbose', + dest='output_mode', action='store_true', + help='show all output')  g.add_option('-q', '--quiet', - dest="quiet", action="store_true", default=False, - help="be quiet") + dest='output_mode', action='store_false', + help='only show errors')    # Manifest  g = p.add_option_group('Manifest options') @@ -300,7 +303,7 @@  if opt.submodules:  m.config.SetString('repo.submodules', 'true')   - if not m.Sync_NetworkHalf(is_new=is_new, quiet=opt.quiet, + if not m.Sync_NetworkHalf(is_new=is_new, quiet=opt.quiet, verbose=opt.verbose,  clone_bundle=opt.clone_bundle,  current_branch_only=opt.current_branch_only,  tags=opt.tags, submodules=opt.submodules, @@ -483,6 +486,9 @@  % ('.'.join(str(x) for x in MIN_GIT_VERSION_SOFT),),  file=sys.stderr)   + opt.quiet = opt.output_mode is False + opt.verbose = opt.output_mode is True +  if opt.worktree:  # Older versions of git supported worktree, but had dangerous gc bugs.  git_require((2, 15, 0), fail=True, msg='git gc worktree corruption')